package ai.people.netmon.framework.exception.enums;

/**
 * 20???? -- 群组相关异常
 *
 * 组异常枚举
 *
 * @author yuanqinglong
 * @date 2022/2/15 17:16
 */
public enum GroupExceptionEnum implements ExceptionEnum{
    // 加入分析
    ANALYSIS_GROUP_TARGET_SOURCE_NULL(false, 200000, "该群组来源为空，不支持分析"),
    ANALYSIS_GROUP_TARGET_ID_NULL(false, 200001, "该群组ID为空，不支持分析"),
    ANALYSIS_ACCOUNT_TARGET_SOURCE_NULL(false, 200002, "该账号来源为空，不支持分析"),
    ANALYSIS_ACCOUNT_TARGET_ID_NULL(false, 200003, "该账号ID为空，不支持分析"),
    ANALYSIS_SUBJECT_KEYWORDS_OR_NAME_EXIST(false, 200004, "该主题名称或关键词已存在"),
    ANALYSIS_SUBJECT_KEYWORDS_EXIST(false, 200005, "该主题关键词已存在"),
    ANALYSIS_SUBJECT_NAME_EXIST(false, 200006, "该主题名称已存在"),
    ANALYSIS_ACCOUNT_EXIST(false, 200007, "该账号已加入分析"),
    ANALYSIS_GROUP_EXIST(false, 200008, "该群组已加入分析"),
    ANALYSIS_GROUP_INVALID(false, 200009, "该群组已失效"),
    ADD_GROUP_REACHED_LIMIT(false, 200010, "您添加群组已达上限"),
    GROUP_DOES_NOT_EXIST(false, 200011, "群组不存在！"),

    // 服务接口
    SERVICE_KEYWORDS_NOT_EMPTY(false, 200029, "关键词不能为空");



    /**
     * 状态
     */
    final boolean status;
    /**
     * 代码
     */
    final int code;
    /**
     * 消息
     */
    final String message;

    GroupExceptionEnum(boolean status, int code, String message) {
        this.status = status;
        this.code = code;
        this.message = message;
    }

    @Override
    public Integer getCode() {
        return code;
    }

    @Override
    public String getMessage() {
        return message;
    }

    @Override
    public boolean getStatus() {
        return status;
    }
}
